<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>基础语法6：v-for列表渲染</title>
    <script src="https://unpkg.com/vue@3"></script>
</head>
<body>
    <div id="app">
        <h1 style="color: aqua;">列表渲染主要是通过v-for指令来实现的</h1>
        <h1 style="color: crimson;">知识点1:迭代普通数组</h1>
        <ul>
            <li v-for="item in flowers">{{item}}</li>
        </ul>
        <h1 style="color: crimson;">知识点2：迭代对象数组</h1>
        <ul>
            <li v-for="(item,index) in users">{{index+1}}--{{item.name}}</li>
        </ul>
        <h1 style="color: crimson;">知识点3：迭代数字</h1>
        <ul>
            <li v-for="item in 10">{{item}}</li>
        </ul>
        <h1 style="color: red;">知识点4：关于key熟悉</h1>
           <h3>为了提升循环的循环的性能，我们一般会在每个循环加上唯一一个一个key值。
            在实际中，后端会向前端返回数据时，携带一个唯一的数据条目标识符，一般是一个随机数。
           </h3>
           <div>
              ID: <input type="text" v-model="id"><br>
              NAME: <input type="text" v-model="name"><br>
              <button @click="add()">添加</button>
              <button @click="del()">删除</button><br> 
              我新增的id时{{id}},我新增的name是{{name}}
              <table border="1">
                <tr v-for="(item,index) in users":key="item.id">
                    <td><input type="checkbox"></td>
                    <td>{{item.id}}</td>
                    <td>{{item.name}}</td>
                </tr>
              </table>
           </div>
        <h1 style="color: red;">知识点5：v-for的嵌套</h1>
            <ul>
                <li v-for="(item,index) in users">用户{{index+1}}
                    <div>
                        <p v-for="(list,i) in item">{{i}}:{{list}}</p>
                    </div>
                </li>
            </ul>
    </div>
    
</body>
</html>
<script>
    const connApp = Vue.createApp({
        data() {
            return {
                flowers:['西蓝花','蝴蝶花','爆米花','海洋之泪'],
                users:[{id:'001',name:'土匪'},{id:'002',name:'小飞'},
                {id:'003',name:'小庞'},{id:'004',name:'妲己'}
                ],
                id:'',
                name:'',
            }
        },
        methods:{
            add(){
                this.users.unshift({id:this.id,name:this.name})
                //push是从数组尾部进行插入，unshift是头部插入
            },
            del(){
                this.users.shift()
                //pop是尾部删除，shift是头部删除
            }
        }

    }).mount("#app")
</script>